As used herein, the following abbreviations shall have the following meanings:                AAA—Authentication, Authorization and Accounting        CN—Core Network        CRF—Charging Rules Function        EPC—Evolved Packet Core        EPS—Evolved Packet System        FBC—Flow Based Charging        GPRS—General Packet Radio Service        GSM—Global System for Mobile Communications        hPCRF—home-PCRF        IMS—IP Multimedia Subsystem        IP BS—IP Bearer Service        
IPsec—IP Security                LTE—Long Term Evolution        MSISDN—Mobile Subscriber Integrated Services Digital Network Number        O&M—Operations & Maintenance        PCC—Policy and Charging Control        PCEF—Policy and Charging Enforcement Function        PCRF—Policy and Charging Rules Function        PDF—Policy Decision Function        PEP—Policy Enforcement Function        PMIP—Proxy Mobile IP        RNC—Radio Network Controller        SAE—System Architecture Evolution        SBLP—Service Based Local Policy        SCTP—Stream Control Transmission Protocol        TCP—Transport Control Protocol        TLS—Transport Layer Security        TPF—Traffic Plane Function        UE—User Equipment        UTRA—UMTS Terrestrial Radio Access Network        WCDMA—Wideband CDMA        
A conventional third generation (3G) UMTS network is typically divided into three interacting domains; a Core Network (CN), a UMTS Terrestrial Radio Access Network (UTRAN) and a User Equipment (UE). The CN provide for instance switching, routing and transfer of user traffic. The CN includes databases and network management functions.
The CN architecture is based on a Global System for Mobile Communications (GSM) network with General Packet Radio Service (GPRS). The UTRAN provides the air interface access method for the UE. The Base Station used within the system is referred to as Node-B and the Node B control equipment is a Radio Network Controller (RNC).
The CN is divided in circuit switched and packet switched domains. Some of the circuit switched elements are Mobile services Switching Center (MSC), Visitor Location Register (VLR) and Gateway MSC. Packet switched elements include the Serving GPRS Support Node (SGSN) and Gateway GPRS Support Node (GGSN). Some network elements are shared by both domains.
In one example, WCDMA technology is selected as UTRAN air interface. UMTS WCDMA is a Direct Sequence CDMA system where user data is multiplied with quasi-random bits derived from WCDMA spreading codes. In UMTS, in addition to channelization, Codes are used for synchronization and scrambling. WCDMA has two basic modes of operation: Frequency Division Duplex (FDD) and Time Division Duplex (TDD).
In LTE, the basic 3G network configuration has been evolved and comprises for example, a mobility management entity/user plane entity (MME/UPE), an E-UTRAN, eNodeB.
The Diameter protocol constitutes an Authentication, Authorization and Accounting (AAA) framework for all applications designed on top of it. The protocol is based on an open and extensible architecture that allows an implementer to define their own applications on top of the base protocol. Examples of Diameter applications include the Mobile IPv4 Application, Network Access Server Application, Extensible Authentication Protocol (EAP) Application, Credit-Control Application, and the Session Initiation Protocol Application.
There are now a number of different 3GPP specific Diameter applications used such as: the Gx-application (Rel6 and onwards), the Rx application (Rel6 and onwards), the Dx-application and the Cx-application (Rel6 and onwards), and the S7, S7a/b/c and S9 application (work in progress for Rel8).
There are different roles in a Diameter protocol based network. A client is a node at the edge of the network that request AAA services on behalf of a user. A Diameter server on the other hand performs authentication and authorization of a user on request by a client. In addition to clients and servers, the Diameter protocol introduces relay, proxy, redirect and translation agents. These agents are useful for several reasons such as load balancing and protocol translation (e.g. between RADIUS and Diameter).
Clients and servers use application sessions to exchange information. Communication is based on exchange of request/response message pairs. Both client (pull) and server-initiated (push) requests are allowed in Diameter.
Transport-wise, the Diameter protocol is based on TCP or SCTP over IP. IPSec and/or TLS could be used for hop-by-hop security, but an end-to-end security mechanism is recommended. FIG. 1 shows the Diameter protocol stack.
Session binding for 3GPP Service Based Local Policy (SBLP), Flow Based Charging (FBC) and Policy and Charging Control (PCC) is described as follows: The IP Multimedia Subsystem (IMS) was introduced into the 3GPP architecture in 3GPP Rel5. In order to support enhanced application-layer services for IMS the concept of service-based local policy (e.g. authorization and policy based control) was applied to the basic GPRS connectivity service. To enable coordination between events in the application layer and resource management in the IP bearer layer, a logical element, the Policy Decision Function (PDF), is used as a logical policy decision element.
The PDF makes decisions in regard to SBLP using policy rules, and communicates these decisions to the IP BS Manager in the GGSN, which is the IP Policy Enforcement Point (PEP) in the SBLP architecture. The PDF in Rel5 was expected to be co-located with the Proxy-CSCF. As a consequence a new interface had to be defined between the PDF and the PEP called the Go interface, as seen in FIG. 2.
Because there are networks having multiple PDFs, it was necessary to specify functionality that would let the GGSN to contact the right P-CSCF/PDF that had authorized the service at session initiation. For SBLP, this was solved through the use of a so called Authorization token. The authorization token was created by the selected P-CSCF/PDF at IM session establishment. The P-CSCF would pass the token to the UE (User Equipment) and the UE in turn would send the authorization token to the GGSN at establishment/change of a PDP-context. Part of the token is a PDF-identifier so when the GGSN received the token it could unambiguously identify the correct PDF against which to establish a Go session. The PDF could then use the authorization token to bind the Go session with the IM session (this is called session binding).
In 3GPP, Rel6 the SBLP concept was further developed. The PDF in Rel6 was no longer expected to be internal to the P-CSCF, thus a new external interface called Gq (based on the Diameter protocol) between the P-CSCF and the PDF was introduced. The authorization token was still used for SBLP, but in Rel6 the token had to be transferred from the PDF to the P-CSCF at session setup. Disadvantageously, this proved difficult to realize as support for the authorization token must be supported by the terminals. As a consequence SBLP is not widely deployed.
In parallel to the SBLP architecture, the concept of Flow Based Charging (FBC) was introduced in 3GPP Rel6. FBC introduced a new system element called the Charging Rules Function (CRF) that interacts with the P-CSCF in one end and the Traffic Plane Function (TPF) in the other. The TPF is typically a GGSN for GPRS. The interface between the P-CSCF and the CRF is called Rx and is based on the Diameter protocol. The interface between the TPF and the CRF is also based on the Diameter protocol and is called Gx. The requirement for session binding in SBLP is equally valid in FBC. However for FBC there is no solution based on an authorization token, but the standard is rather vague leaving much to solve for the implementation.
In 3GPP Rel7, the concept of SBLP and FBC is merged into a common architecture called Policy and Charging Control, as seen in FIG. 3. The PDF and the CRF are merged into a single element called the Policy and Charging Rules Function (PCRF). Also the PEP and the TPF are merged into a logical function called the Policy and Charging Enforcement Function (PCEF). Finally the interfaces are merged in the following fashion:
Rel6 Gx+Rel6 Go into Rel7 Gx; and
Rel6 Rx+Rel6 Gq into Rel7 Rx.
While the requirement for session binding is clear, and in an environment hosting multiple PCRFs it would be required to have some mean for PCRF selection, the standard is still not clear. The problem of selecting the same PCRF for multiple sessions is escalated in 3GPP Rel8 for the Evolved Packet System (EPS), formerly known as System Architecture Evolution (SAE). FIG. 4 illustrates the EPS architecture for non-roaming 3GPP access using a Proxy Mobile IP (PMIP) based S5 interface. For this case, there is a need to bind S7c and S7 sessions (both protocols being based on Diameter Gx). In addition, there is an Rx interface that also requires binding to the S7 session.
FIG. 5 illustrates a roaming scenario for 3GPP access. In this scenario yet another interface is present called S9. In this case there is a need to find the right home-PCRF (hPCRF) and bind the S9 and S7 sessions in the hPCRF. The examples in FIG. 4 and FIG. 5 are just two examples out of many where mechanisms for PCRF discovery are required in 3GPP Rel8.
Disadvantageously, the principles for PCRF selection are currently not described in the 3GPP standard. A consistent mechanism for PCRF discovery is required in order to be able to do session binding for Rx and Gx sessions (Rel6 onwards) and for S7 and S9 sessions (Rel8 onwards). Current implementations are client based selection mechanisms based on proprietary algorithms. This is not efficient for several reasons, including, for O&M, re-configuring the PCRF network will imply that all clients will have to be updated; for interoperability, in a multi-vendor environment it is not certain that clients from different vendors will support the same proprietary mechanisms for PCRF selection; and for scalability, some operators can be expected to operate very large Diameter protocol networks in the future. Configuring PCRF selection as a distributed mechanism in the network is not likely to scale very well.